package com.chaodev.base.service;

import com.github.pagehelper.PageInfo;
import com.chaodev.base.dto.ActivityDivisionDto;
import com.chaodev.base.model.ActivityDivision;
import com.chaodev.base.model.ActivityNotice;
import com.chaodev.base.model.Volunteer;

import java.util.List;

public interface ActivityDivisionService {

    /**
     * 新增活动分工
     *
     * @param activityDivision
     * @return
     */
    boolean addActivityDivision(ActivityDivision activityDivision);

    /**
     * 修改活动分工
     *
     * @param activityDivision
     * @return
     */
    boolean editActivityDivision(ActivityDivision activityDivision);

    /**
     * 删除活动分工
     *
     * @param activityDivision
     * @return
     */
    boolean removeActivityDivision(ActivityDivision activityDivision);

    /**
     * 查询活动分工列表
     *
     * @param activityDivisionDto
     * @return
     */
    List<ActivityDivision> getActivityDivisionList(ActivityDivisionDto activityDivisionDto);

    /**
     * 查询活动分工分页
     *
     * @param activityDivisionDto
     * @return
     */
    PageInfo<ActivityDivision> getActivityDivisionPage(ActivityDivisionDto activityDivisionDto);

    /**
     * 根据活动获取报名志愿者
     *
     * @param id
     * @return
     */
    List<Volunteer> getVolunteerByActivity(String id);

    /**
     * 根据活动获取报名志愿者
     *
     * @param id
     * @param page
     * @param rows
     * @return
     */
    PageInfo<Volunteer> getVolunteerByActivity(String id, int page, int rows);

    /**
     * 获取用户待分工活动分页列表
     *
     * @param activityDivisionDto
     * @return
     */
    PageInfo<ActivityNotice> getActivityNoticeNotDivisionPage(ActivityDivisionDto activityDivisionDto);

}

